package com.grp6.game.chess.model;

import com.grp6.game.chess.player.ChessHumanPlayer;
import com.grp6.game.chess.view.ChessPieceView;
import com.grp6.game.model.AbstractObservableModel;
import com.grp6.game.model.IPiece;
import com.grp6.game.model.IPlace;

public class ChessPiece extends AbstractObservableModel<ChessPieceView> implements IPiece<ChessPieceView>{

	private Figure figure;
	private Color color;
	private ChessPlace place;
	private ChessHumanPlayer humanPlayer;
	
	public void setHumanPlayer(ChessHumanPlayer humanPlayer) {
		this.humanPlayer = humanPlayer;
	}

	public ChessPiece(Figure figure,Color color){
		this.figure = figure;
		this.color = color;
	}
	
	public Figure getFigure() {
		return figure;
	}

	public Color getColor() {
		return color;
	}

	@Override
	public IPlace getPlace() {
		return place;
	}

	public static enum Figure{
		King,Queen,Rook,Bishop,Knight,Pawn
	}
	
	public static enum Color{
		Black,White
	}

	@Override
	public void actionPerformed(String actionName) {

	}

	@Override
	public void setPlace(IPlace place) {
		this.place = (ChessPlace) place;
	}
}
